Preparation
library(conflicted)
Error in library(conflicted) : there is no package called ‘conflicted’
Data Access
head(happiness)
head(terrorism)
Data Wrangling
Part I: Data Clean
terrorismClean <-
terrorism %>%
dplyr::filter(Year =="2015") %>%
dplyr::mutate(Country = as.character(Country)) %>%
dplyr::select(Year, Country)
happinessClean <-
happiness %>%
dplyr::mutate(Country = as.character(Country)) %>%
plyr::rename(c("Happiness.Score"="Score","Economy..GDP.per.Capita."="Economy","Health..Life.Expectancy."="Health","Trust..Government.Corruption."="Trust","Dystopia.Residual"="Dystopia"))
terrorismClean
happinessClean
table2015 <-
terrorismClean %>%
dplyr::left_join(happinessClean,by = "Country") %>%
dplyr::group_by(Country) %>%
dplyr::summarise(Score=max(Score),Economy=max(Economy),Happiness.Rank=max(Happiness.Rank),attackTimes = n()) %>%
dplyr::arrange(desc(attackTimes))
table2015clean <- na.omit(table2015)
relation1<-
ggplot(data=table2015clean, aes(x=Score,y=attackTimes))+geom_line()+ggtitle("Happiness Score vs Terror attacks") + ylab("No. of Terror Attacks") + xlab("Happiness Score")
relation

relation2 <-
ggplot(data=table2015clean,aes(Happiness.Rank,attackTimes))+
geom_bar(stat="identity")
relation2

Analysis of the Graph: The graph I shows the connection between happiness score and attack times. Attack times are calculated by sum up the number of attacks in each country. Based on the graph, we can see that for happiness score under 6, the attack times are relatively high, there is a peak between score 4 and 5, the attack times are over 2000. And for a score over six, we can see the attack times are much less. Thus we made a prediction that a higher happiness score would reduce the terrorism attack rate.
The graph II shows the rank for the countries with highest happiness scores to lowest. We can see clearly that the first half where the happiness rank is high, the attack times is relatively low. For those rank with larger numbers, the attack times are much higher. This graph also supports potential relationship between happiness and terrorism attack.
Relationship between happiness score and other variables
ggplotRegression <- function (fit) {
ggplot(fit$model, aes_string(x = names(fit$model)[1], y = names(fit$model)[2]),) +
theme_bw() + geom_point(pch=20) + labs(title = names(fit$model)[2]+geom_smooth(method = lm))
}
gg1 <-ggplotRegression(lm(Score ~ Dystopia, data = happinessClean))
gg2 <-ggplotRegression(lm(Score ~ Generosity, data = happinessClean))
gg3 <-ggplotRegression(lm(Score ~ Freedom, data = happinessClean))
gg4 <-ggplotRegression(lm(Score ~ Economy, data = happinessClean))
gg5 <-ggplotRegression(lm(Score ~ Family, data = happinessClean))
gg6 <-ggplotRegression(lm(Score ~ Health, data = happinessClean))
gg7 <-ggplotRegression(lm(Score ~ Trust, data = happinessClean))
library(grid)
library(gridExtra)
grid.arrange(gg1,gg2,gg3,gg4,gg5,gg6,gg7,ncol=3,nrow=3)

Part II: Analysis of the Graph: Based on the graph, we can assume the economy and family are possibly the strongest factors that relate to happiness. Although we don’t have the exact number to support yet, the dots seem to line up in a positive direction.
library(corrplot)
corMat=cor(happinessClean[,c(4,6,7,8,9,10,11,12)])
corrplot(corMat, method = "number")

Another way of Part II:
Analysis of the Graph: The graph above is a correlation graph and it represents how strong each factor is related to and happiness score. In the colored correlation graph, it uses numbers to show that the relationship between happiness score and economy are the strongest. 0.78 also represents that their relationship is positive, which means the better the economy, the happiness score is higher. Based on this graph, our prediction that the economy is the strongest factor related to happiness score is again stated.
Economy and happiness
tree <-
party::ctree(Score ~ Economy, data = happinessClean)
plot(tree, type="simple")

Analysis of the Graph: Based on the decision tree above, we can see that economic is a good indicator in deciding a country’s happiness. For the economy higher than 1.2, the country are the happiest with a score of 6.8. For country has an economy higher than 0.9 but less than 1.2, the country is less happy but still with a relatively high score of 5.7. For the economy lower than 0.9 but higher than 0.47, the happiness score decrease to 5.0 and lastly for economy less and equal to 0.47, the happiness score is the lowest.
Terrorism, economy, and happiness score
EconomyTerror <-
table2015clean %>%
dplyr::mutate(AboveAverage=if_else(Economy > mean(Economy),"True","False"))
EconomyTerror
EconomyTerror %>%
ggplot(aes(y=attackTimes,x=Score,color=AboveAverage,size=attackTimes))+geom_point(alpha=0.5)+ylim(0,400)

Part IV: Analysis graph: The graph shows three variables, the country’s happiness score, attack times and whether the economy is above or below the average. The large red circles indicate that countries with an economy below the average and the happiness score less than 5 have a great number of attacks in a year compared to much fewer attacks for economy above average and happiness score higher than 6 showed in the blue little circle. Thus, we think the change in the economy will not only have an impact on happiness scores but also on attack times.
Conclusion:
By and large, we found that happiness scores is related the rates of terrorism attacks; and Economy play the most significant role in affectting happiness and terrorism. This conclusion can inspire us a lot. For example, by paying more attention on protecting essential economy streams from terrorism attack like tourism and oil, government could help mitigate the impact of terrorism on the happiness across the country.
LS0tCnRpdGxlOiAiU1RBVCAxODQgRmluYWwgUmVwb3J0IgpuYW1lOiAiSmlheWluIEh1LCBZaW5nZHVvIEx1byIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQojIyBQcmVwYXJhdGlvbgpgYGB7cn0KbGlicmFyeShkcGx5cikKbGlicmFyeShnZ3Bsb3QyKQpsaWJyYXJ5KHBseXIpCmxpYnJhcnkoY29uZmxpY3RlZCkKYGBgCgojIyBEYXRhIEFjY2VzcwpgYGB7cn0KaGFwcGluZXNzIDwtIHJlYWQuY3N2KCJ+L0Rvd25sb2Fkcy9oYXBweTIwMTUvMjAxNS5jc3YiKQp0ZXJyb3Jpc20gPC0gcmVhZC5jc3YoIn4vRG93bmxvYWRzL2hhcHB5MjAxNS9nbG9iYWx0ZXJyb3Jpc20uY2xlYW4uZGF0YS5jc3YiKQpoZWFkKGhhcHBpbmVzcykKaGVhZCh0ZXJyb3Jpc20pCmBgYAoKIyMgRGF0YSBXcmFuZ2xpbmcKIyMjIFBhcnQgSTogRGF0YSBDbGVhbgpgYGB7cn0KdGVycm9yaXNtQ2xlYW4gPC0KICB0ZXJyb3Jpc20gJT4lIAogIGRwbHlyOjpmaWx0ZXIoWWVhciA9PSIyMDE1IikgJT4lCiAgZHBseXI6Om11dGF0ZShDb3VudHJ5ID0gYXMuY2hhcmFjdGVyKENvdW50cnkpKSAlPiUKICBkcGx5cjo6c2VsZWN0KFllYXIsIENvdW50cnkpCgpoYXBwaW5lc3NDbGVhbiA8LQogIGhhcHBpbmVzcyAlPiUKICBkcGx5cjo6bXV0YXRlKENvdW50cnkgPSBhcy5jaGFyYWN0ZXIoQ291bnRyeSkpICU+JQogIHBseXI6OnJlbmFtZShjKCJIYXBwaW5lc3MuU2NvcmUiPSJTY29yZSIsIkVjb25vbXkuLkdEUC5wZXIuQ2FwaXRhLiI9IkVjb25vbXkiLCJIZWFsdGguLkxpZmUuRXhwZWN0YW5jeS4iPSJIZWFsdGgiLCJUcnVzdC4uR292ZXJubWVudC5Db3JydXB0aW9uLiI9IlRydXN0IiwiRHlzdG9waWEuUmVzaWR1YWwiPSJEeXN0b3BpYSIpKQoKdGVycm9yaXNtQ2xlYW4KaGFwcGluZXNzQ2xlYW4KCnRhYmxlMjAxNSA8LQogIHRlcnJvcmlzbUNsZWFuICU+JQogIGRwbHlyOjpsZWZ0X2pvaW4oaGFwcGluZXNzQ2xlYW4sYnkgPSAiQ291bnRyeSIpICU+JQogIGRwbHlyOjpncm91cF9ieShDb3VudHJ5KSAlPiUKICBkcGx5cjo6c3VtbWFyaXNlKFNjb3JlPW1heChTY29yZSksRWNvbm9teT1tYXgoRWNvbm9teSksSGFwcGluZXNzLlJhbms9bWF4KEhhcHBpbmVzcy5SYW5rKSxhdHRhY2tUaW1lcyA9IG4oKSkgJT4lCiAgZHBseXI6OmFycmFuZ2UoZGVzYyhhdHRhY2tUaW1lcykpCgp0YWJsZTIwMTVjbGVhbiA8LSBuYS5vbWl0KHRhYmxlMjAxNSkKICAKcmVsYXRpb24xPC0KZ2dwbG90KGRhdGE9dGFibGUyMDE1Y2xlYW4sIGFlcyh4PVNjb3JlLHk9YXR0YWNrVGltZXMpKStnZW9tX2xpbmUoKStnZ3RpdGxlKCJIYXBwaW5lc3MgU2NvcmUgdnMgVGVycm9yIGF0dGFja3MiKSArIHlsYWIoIk5vLiBvZiBUZXJyb3IgQXR0YWNrcyIpICsgeGxhYigiSGFwcGluZXNzIFNjb3JlIikKcmVsYXRpb24KCnJlbGF0aW9uMiA8LQogIGdncGxvdChkYXRhPXRhYmxlMjAxNWNsZWFuLGFlcyhIYXBwaW5lc3MuUmFuayxhdHRhY2tUaW1lcykpKwpnZW9tX2JhcihzdGF0PSJpZGVudGl0eSIpCnJlbGF0aW9uMgoKYGBgCkFuYWx5c2lzIG9mIHRoZSBHcmFwaDoKVGhlIGdyYXBoIEkgc2hvd3MgdGhlIGNvbm5lY3Rpb24gYmV0d2VlbiBoYXBwaW5lc3Mgc2NvcmUgYW5kIGF0dGFjayB0aW1lcy4gQXR0YWNrIHRpbWVzIGFyZSBjYWxjdWxhdGVkIGJ5IHN1bSB1cCB0aGUgbnVtYmVyIG9mIGF0dGFja3MgaW4gZWFjaCBjb3VudHJ5LiBCYXNlZCBvbiB0aGUgZ3JhcGgsIHdlIGNhbiBzZWUgdGhhdCBmb3IgaGFwcGluZXNzIHNjb3JlIHVuZGVyIDYsIHRoZSBhdHRhY2sgdGltZXMgYXJlIHJlbGF0aXZlbHkgaGlnaCwgdGhlcmUgaXMgYSBwZWFrIGJldHdlZW4gc2NvcmUgNCBhbmQgNSwgdGhlIGF0dGFjayB0aW1lcyBhcmUgb3ZlciAyMDAwLiBBbmQgZm9yIGEgc2NvcmUgb3ZlciBzaXgsIHdlIGNhbiBzZWUgdGhlIGF0dGFjayB0aW1lcyBhcmUgbXVjaCBsZXNzLiBUaHVzIHdlIG1hZGUgYSBwcmVkaWN0aW9uIHRoYXQgYSBoaWdoZXIgaGFwcGluZXNzIHNjb3JlIHdvdWxkIHJlZHVjZSB0aGUgdGVycm9yaXNtIGF0dGFjayByYXRlLgoKVGhlIGdyYXBoIElJIHNob3dzIHRoZSByYW5rIGZvciB0aGUgY291bnRyaWVzIHdpdGggaGlnaGVzdCBoYXBwaW5lc3Mgc2NvcmVzIHRvIGxvd2VzdC4gV2UgY2FuIHNlZSBjbGVhcmx5IHRoYXQgdGhlIGZpcnN0IGhhbGYgd2hlcmUgdGhlIGhhcHBpbmVzcyByYW5rIGlzIGhpZ2gsIHRoZSBhdHRhY2sgdGltZXMgaXMgcmVsYXRpdmVseSBsb3cuIEZvciB0aG9zZSByYW5rIHdpdGggbGFyZ2VyIG51bWJlcnMsIHRoZSBhdHRhY2sgdGltZXMgYXJlIG11Y2ggaGlnaGVyLiBUaGlzIGdyYXBoIGFsc28gc3VwcG9ydHMgcG90ZW50aWFsIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGhhcHBpbmVzcyBhbmQgdGVycm9yaXNtIGF0dGFjay4KCiMjIFJlbGF0aW9uc2hpcCBiZXR3ZWVuIGhhcHBpbmVzcyBzY29yZSBhbmQgb3RoZXIgdmFyaWFibGVzCmBgYHtyfQoKZ2dwbG90UmVncmVzc2lvbiA8LSBmdW5jdGlvbiAoZml0KSB7CiAgZ2dwbG90KGZpdCRtb2RlbCwgYWVzX3N0cmluZyh4ID0gbmFtZXMoZml0JG1vZGVsKVsxXSwgeSA9IG5hbWVzKGZpdCRtb2RlbClbMl0pLCkgKyAKICAgIHRoZW1lX2J3KCkgKyBnZW9tX3BvaW50KHBjaD0yMCkgKyBsYWJzKHRpdGxlID0gbmFtZXMoZml0JG1vZGVsKVsyXStnZW9tX3Ntb290aChtZXRob2QgPSBsbSkpCn0KCmdnMSA8LWdncGxvdFJlZ3Jlc3Npb24obG0oU2NvcmUgfiBEeXN0b3BpYSwgZGF0YSA9IGhhcHBpbmVzc0NsZWFuKSkKZ2cyIDwtZ2dwbG90UmVncmVzc2lvbihsbShTY29yZSB+IEdlbmVyb3NpdHksIGRhdGEgPSBoYXBwaW5lc3NDbGVhbikpCmdnMyA8LWdncGxvdFJlZ3Jlc3Npb24obG0oU2NvcmUgfiBGcmVlZG9tLCBkYXRhID0gaGFwcGluZXNzQ2xlYW4pKQpnZzQgPC1nZ3Bsb3RSZWdyZXNzaW9uKGxtKFNjb3JlIH4gRWNvbm9teSwgZGF0YSA9IGhhcHBpbmVzc0NsZWFuKSkKZ2c1IDwtZ2dwbG90UmVncmVzc2lvbihsbShTY29yZSB+IEZhbWlseSwgZGF0YSA9IGhhcHBpbmVzc0NsZWFuKSkKZ2c2IDwtZ2dwbG90UmVncmVzc2lvbihsbShTY29yZSB+IEhlYWx0aCwgZGF0YSA9IGhhcHBpbmVzc0NsZWFuKSkKZ2c3IDwtZ2dwbG90UmVncmVzc2lvbihsbShTY29yZSB+IFRydXN0LCBkYXRhID0gaGFwcGluZXNzQ2xlYW4pKQoKbGlicmFyeShncmlkKQpsaWJyYXJ5KGdyaWRFeHRyYSkKZ3JpZC5hcnJhbmdlKGdnMSxnZzIsZ2czLGdnNCxnZzUsZ2c2LGdnNyxuY29sPTMsbnJvdz0zKQpgYGAKUGFydCBJSTogCkFuYWx5c2lzIG9mIHRoZSBHcmFwaDoKQmFzZWQgb24gdGhlIGdyYXBoLCB3ZSBjYW4gYXNzdW1lIHRoZSBlY29ub215IGFuZCBmYW1pbHkgYXJlIHBvc3NpYmx5IHRoZSBzdHJvbmdlc3QgZmFjdG9ycyB0aGF0IHJlbGF0ZSB0byBoYXBwaW5lc3MuIEFsdGhvdWdoIHdlIGRvbuKAmXQgaGF2ZSB0aGUgZXhhY3QgbnVtYmVyIHRvIHN1cHBvcnQgeWV0LCB0aGUgZG90cyBzZWVtIHRvIGxpbmUgdXAgaW4gYSBwb3NpdGl2ZSBkaXJlY3Rpb24uCgpgYGB7cn0KbGlicmFyeShjb3JycGxvdCkKYGBgCgpgYGB7cn0KY29yTWF0PWNvcihoYXBwaW5lc3NDbGVhblssYyg0LDYsNyw4LDksMTAsMTEsMTIpXSkKY29ycnBsb3QoY29yTWF0LCBtZXRob2QgPSAibnVtYmVyIikKYGBgCkFub3RoZXIgd2F5IG9mIFBhcnQgSUk6CgpBbmFseXNpcyBvZiB0aGUgR3JhcGg6ClRoZSBncmFwaCBhYm92ZSBpcyBhIGNvcnJlbGF0aW9uIGdyYXBoIGFuZCBpdCByZXByZXNlbnRzIGhvdyBzdHJvbmcgZWFjaCBmYWN0b3IgaXMgcmVsYXRlZCB0byBhbmQgaGFwcGluZXNzIHNjb3JlLiBJbiB0aGUgY29sb3JlZCBjb3JyZWxhdGlvbiBncmFwaCwgaXQgdXNlcyBudW1iZXJzIHRvIHNob3cgdGhhdCB0aGUgcmVsYXRpb25zaGlwIGJldHdlZW4gaGFwcGluZXNzIHNjb3JlIGFuZCBlY29ub215IGFyZSB0aGUgc3Ryb25nZXN0LiAwLjc4IGFsc28gcmVwcmVzZW50cyB0aGF0IHRoZWlyIHJlbGF0aW9uc2hpcCBpcyBwb3NpdGl2ZSwgd2hpY2ggbWVhbnMgdGhlIGJldHRlciB0aGUgZWNvbm9teSwgdGhlIGhhcHBpbmVzcyBzY29yZSBpcyBoaWdoZXIuIEJhc2VkIG9uIHRoaXMgZ3JhcGgsIG91ciBwcmVkaWN0aW9uIHRoYXQgdGhlIGVjb25vbXkgaXMgdGhlIHN0cm9uZ2VzdCBmYWN0b3IgcmVsYXRlZCB0byBoYXBwaW5lc3Mgc2NvcmUgaXMgYWdhaW4gc3RhdGVkLgoKIyMgRWNvbm9teSBhbmQgaGFwcGluZXNzCmBgYHtyfQp0cmVlIDwtCiAgcGFydHk6OmN0cmVlKFNjb3JlIH4gRWNvbm9teSwgZGF0YSA9IGhhcHBpbmVzc0NsZWFuKQpwbG90KHRyZWUsIHR5cGU9InNpbXBsZSIpCmBgYAoKCkFuYWx5c2lzIG9mIHRoZSBHcmFwaDoKQmFzZWQgb24gdGhlIGRlY2lzaW9uIHRyZWUgYWJvdmUsIHdlIGNhbiBzZWUgdGhhdCBlY29ub21pYyBpcyBhIGdvb2QgaW5kaWNhdG9yIGluIGRlY2lkaW5nIGEgY291bnRyeeKAmXMgaGFwcGluZXNzLiBGb3IgdGhlIGVjb25vbXkgaGlnaGVyIHRoYW4gMS4yLCB0aGUgY291bnRyeSBhcmUgdGhlIGhhcHBpZXN0IHdpdGggYSBzY29yZSBvZiA2LjguIEZvciBjb3VudHJ5IGhhcyBhbiBlY29ub215IGhpZ2hlciB0aGFuIDAuOSBidXQgbGVzcyB0aGFuIDEuMiwgdGhlIGNvdW50cnkgaXMgbGVzcyBoYXBweSBidXQgc3RpbGwgd2l0aCBhIHJlbGF0aXZlbHkgaGlnaCBzY29yZSBvZiA1LjcuIEZvciB0aGUgZWNvbm9teSBsb3dlciB0aGFuIDAuOSBidXQgaGlnaGVyIHRoYW4gMC40NywgdGhlIGhhcHBpbmVzcyBzY29yZSBkZWNyZWFzZSB0byA1LjAgYW5kIGxhc3RseSBmb3IgZWNvbm9teSBsZXNzIGFuZCBlcXVhbCB0byAwLjQ3LCB0aGUgaGFwcGluZXNzIHNjb3JlIGlzIHRoZSBsb3dlc3QuIAoKIyMgVGVycm9yaXNtLCBlY29ub215LCBhbmQgaGFwcGluZXNzIHNjb3JlCmBgYHtyfQpFY29ub215VGVycm9yIDwtCiAgdGFibGUyMDE1Y2xlYW4gJT4lCiAgZHBseXI6Om11dGF0ZShBYm92ZUF2ZXJhZ2U9aWZfZWxzZShFY29ub215ID4gbWVhbihFY29ub215KSwiVHJ1ZSIsIkZhbHNlIikpCkVjb25vbXlUZXJyb3IKCkVjb25vbXlUZXJyb3IgJT4lCiAgZ2dwbG90KGFlcyh5PWF0dGFja1RpbWVzLHg9U2NvcmUsY29sb3I9QWJvdmVBdmVyYWdlLHNpemU9YXR0YWNrVGltZXMpKStnZW9tX3BvaW50KGFscGhhPTAuNSkreWxpbSgwLDQwMCkKYGBgClBhcnQgSVY6CkFuYWx5c2lzIGdyYXBoOgpUaGUgZ3JhcGggc2hvd3MgdGhyZWUgdmFyaWFibGVzLCB0aGUgY291bnRyeeKAmXMgaGFwcGluZXNzIHNjb3JlLCBhdHRhY2sgdGltZXMgYW5kIHdoZXRoZXIgdGhlIGVjb25vbXkgaXMgYWJvdmUgb3IgYmVsb3cgdGhlIGF2ZXJhZ2UuIFRoZSBsYXJnZSByZWQgY2lyY2xlcyBpbmRpY2F0ZSB0aGF0IGNvdW50cmllcyB3aXRoIGFuIGVjb25vbXkgYmVsb3cgdGhlIGF2ZXJhZ2UgYW5kIHRoZSBoYXBwaW5lc3Mgc2NvcmUgbGVzcyB0aGFuIDUgaGF2ZSBhIGdyZWF0IG51bWJlciBvZiBhdHRhY2tzIGluIGEgeWVhciBjb21wYXJlZCB0byBtdWNoIGZld2VyIGF0dGFja3MgZm9yIGVjb25vbXkgYWJvdmUgYXZlcmFnZSBhbmQgaGFwcGluZXNzIHNjb3JlIGhpZ2hlciB0aGFuIDYgc2hvd2VkIGluIHRoZSBibHVlIGxpdHRsZSBjaXJjbGUuIFRodXMsIHdlIHRoaW5rIHRoZSBjaGFuZ2UgaW4gdGhlIGVjb25vbXkgd2lsbCBub3Qgb25seSBoYXZlIGFuIGltcGFjdCBvbiBoYXBwaW5lc3Mgc2NvcmVzIGJ1dCBhbHNvIG9uIGF0dGFjayB0aW1lcy4KCiMjIENvbmNsdXNpb246CkJ5IGFuZCBsYXJnZSwgd2UgZm91bmQgdGhhdCBoYXBwaW5lc3Mgc2NvcmVzIGlzIHJlbGF0ZWQgdGhlIHJhdGVzIG9mIHRlcnJvcmlzbSBhdHRhY2tzOyBhbmQgRWNvbm9teSBwbGF5IHRoZSBtb3N0IHNpZ25pZmljYW50IHJvbGUgaW4gYWZmZWN0dGluZyBoYXBwaW5lc3MgYW5kIHRlcnJvcmlzbS4gVGhpcyBjb25jbHVzaW9uIGNhbiBpbnNwaXJlIHVzIGEgbG90LiBGb3IgZXhhbXBsZSwgYnkgcGF5aW5nIG1vcmUgYXR0ZW50aW9uIG9uIHByb3RlY3RpbmcgZXNzZW50aWFsIGVjb25vbXkgc3RyZWFtcyBmcm9tIHRlcnJvcmlzbSBhdHRhY2sgbGlrZSB0b3VyaXNtIGFuZCBvaWwsIGdvdmVybm1lbnQgY291bGQgaGVscCBtaXRpZ2F0ZSB0aGUgaW1wYWN0IG9mIHRlcnJvcmlzbSBvbiB0aGUgaGFwcGluZXNzIGFjcm9zcyB0aGUgY291bnRyeS4KCgoKCgoK